/*
 * @: 
 * @Version: 1.0
 * @Autor: ziwei
 * @Date: 2022-02-11 13:55:27
 * @LastEditors: ziwei
 * @LastEditTime: 2022-02-11 13:56:30
 */
const { SyncWaterfallHook} = require('tapable');
const hook = new SyncWaterfallHook(['name','age']);
//如果上一个回调函数的结果不是undefined则可以作为下一个回调函数的第一个参数
hook.tap("1",(name,age)=>{
    console.log(1,name,age);
    return 'fn1'
})
hook.tap("2", (name, age) => {
    console.log(2, name, age);
    return 'fn2'//保险丝一样，有返回值就直接熔断后边就不走了
})
hook.tap("3", (name, age) => {
    console.log(3, name, age);
})

//call触发事件
hook.call("xiayu",12);